package greg1992.lekcja3.turniej;

import java.util.Vector;

public class Druzyna {

	private String nazwa;
	private Zawodnik zawodnik1;
	private Zawodnik zawodnik2;
	private Vector<Zawodnik> zawodnicy;
	
	public Druzyna(){
		this.nazwa = "";
		zawodnicy = new Vector<Zawodnik>();
	}
	
	public Druzyna(String nazwa){
		this.nazwa = nazwa;
	}
	
	public static void main(String[] args){
		
		Druzyna druzyna = new Druzyna();
		Zawodnik zawodnik1 = new Zawodnik();
		zawodnik1.setImie("Karim");
		zawodnik1.setNazwisko("Benzema");
		zawodnik1.setMotywacja(3.3);
		zawodnik1.setKondycja(3.0);
		zawodnik1.setSzybkosc(4.4);
		Zawodnik zawodnik2 = new Zawodnik();
		zawodnik2.setImie("Cristiano");
		zawodnik2.setNazwisko("Ronaldo");
		zawodnik2.setMotywacja(4.3);
		zawodnik2.setKondycja(5.0);
		zawodnik2.setSzybkosc(4.9);
		
		int ilosc1 = druzyna.iloscZawodnikow();
		druzyna.dodajZawodnika(zawodnik1);
		int ilosc2 = druzyna.iloscZawodnikow();
		druzyna.dodajZawodnika(zawodnik2);
		int ilosc3 = druzyna.iloscZawodnikow();
		druzyna.zwrocZawodnika(1);
		//druzyna.usunZawodnika(0);
		int ilosc4 = druzyna.iloscZawodnikow();
		
		System.out.println(ilosc1);
		System.out.println(ilosc2);
		System.out.println(ilosc3);
		System.out.println(ilosc4);
		System.out.println(druzyna.zawieraZawodnika("Cristiano", "Ronaldo"));
		System.out.println(druzyna.sredniaUmiejetnoscDruzyny());
	}
	
	
	public String getNazwa(){
		return this.nazwa;
	}
	
	public void setNazwa(String nazwa){
		this.nazwa = nazwa;
	}
	
	public Zawodnik getZawodnik1(){
		return this.zawodnik1;
	}
	
	public void setZawodnik1(Zawodnik zawodnik){
		this.zawodnik1 = zawodnik;
	}
	
	public Zawodnik getZawodnik2(){
		return this.zawodnik2;
	}
	
	public void setZawodnik2(Zawodnik zawodnik){
		this.zawodnik2 = zawodnik;
	}
	
	
	public void wypiszAtrybutyDoKonsoli(){
		System.out.println(this.nazwa);
		
	}
	
	public boolean dodajZawodnika(Zawodnik zawodnik){
		
		if(!zawodnicy.contains(zawodnik)){
			zawodnicy.add(zawodnik);
			return false;
		}else{
			System.out.println("Zawodnik juz istnieje!");
			return true;
		}
		
	}
	public Zawodnik zwrocZawodnika(int i){
		if(zawodnicy.isEmpty()){
			System.out.println("Brak zawodnikow!");
			return null;
		}else if(i < 0 && i >= zawodnicy.size()){
			System.out.println("Nieprawidlowy index!");
			return null;
		}else{
			return zawodnicy.get(i);
		}
	}
	
	public boolean usunZawodnika(int i){
		if(!zawodnicy.contains(zwrocZawodnika(i))){
			System.out.println("Nie ma takiego zawodnika!");
			return false;
		}else{
			return zawodnicy.remove(zwrocZawodnika(i));
		}
	}
	
	public boolean zawieraObjektZawodnika(Zawodnik zawodnik){
		if(zawodnicy.contains(zawodnik)){
			return true;
		}else{
			System.out.println("Nie ma takiego zawodnika!");
			return false;
		}
	}
	
	public int iloscZawodnikow(){
		return zawodnicy.size();
	}
	
	public boolean zawieraZawodnika(String imie, String nazwisko){
		int i = 0;
		
		while(i < iloscZawodnikow()){
			if((zwrocZawodnika(i).getImie() == imie) &&
				(zwrocZawodnika(i).getNazwisko() == nazwisko)){
				return true;
			}
			i++;
		}
		return false;
	}
	
	public double sredniaUmiejetnoscDruzyny(){
		double srednia = 0.00;
		int i = 0;
		while(i < iloscZawodnikow()){
			srednia += zwrocZawodnika(i).getUmiejetnosci();
			i++;
		}
		return srednia / iloscZawodnikow();
	}
	
}